package net.lab1024.sa.admin.module.users.approval.domain.entity;

import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.format.DateTimeFormat;
import com.alibaba.excel.metadata.data.CellData;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.math.BigDecimal;
import java.sql.Timestamp;

import lombok.Data;
import net.lab1024.sa.admin.module.users.approval.listener.CustomTimestampConverter;


@Data
@TableName("t_consumables_purchase_approval")
public class ConsumablesPurchaseApprovalEntity {

    /**
     * 审批表id
     */
    @TableId(type = IdType.AUTO)
    private Integer id;

    /**
     * 采购日期
     */

    @ExcelProperty(value = "到货日期",converter = CustomTimestampConverter.class)
    @DateTimeFormat("yyyy-MM-dd HH:mm:ss")
    private Timestamp purchaseDate;

    /**
     * 请购部门
     */
    private String department;

    /**
     * 申请人
     */
    private Integer applicant;

    @TableField(exist = false)
    private  String actualName;

    /**
     * 申请人电话
     */
    private String applicantPhone;

    /**
     * 序号
     */

    private Integer serialNumber;

    /**
     * 耗材名称
     */
    @ExcelProperty("耗材名称")
    private String materialName;

    /**
     * 规格
     */
    @ExcelProperty("规格型号")
    private String specification;

    /**
     * 数量
     */
    @ExcelProperty("采购数量")
    private Integer quantity;

    /**
     * 单价（元）
     */
    @ExcelProperty("单价（元）")
    private BigDecimal unitPrice;

    /**
     * 金额（元）
     */
    @ExcelProperty("总价（元）")
    private BigDecimal totalAmount;

    /**
     * 存放地点
     */
    @ExcelProperty("存放地点")
    private String storageLocation;

    /**
     * 预算采购金额（元）
     */
    private BigDecimal budgetAmount;

    /**
     * 经费项目名称
     */
    private String projectName;

    /**
     * 经费项目编号
     */
    private String projectId;

    @ExcelProperty("采购途径")
    private String purchaseChannel;

    /**
     * 使用部门副职意见（包括签名和日期）0表示不同意 1表示同意
     */
    private Integer deputyHeadOpinion;

    /**
     * 使用部门正职意见（包括签名和日期）0表示不同意 1表示同意
     */
    private Integer headOpinion;

    /**
     * 职能部门意见（大于2万元，包括签名和日期）0表示不同意 1表示同意
     */
    private Integer functionDepartmentOpinion;

    /**
     * 教学主管领导意见（大于2万元，包括签名和日期）0表示不同意 1表示同意
     */
    private Integer teachingLeaderOpinion;

    /**
     * 审核状态，pending表示待审核，approved表示已批准，rejected表示已拒绝
     */
    private Integer approvalStatus;


    private Timestamp deputyHeadOpDate;

    private Timestamp headOpDate;

    private Timestamp functionDepartmentOpDate;

    private Timestamp teachingLeaderOpDate;

    private Timestamp approvalDate;

    private Integer category;

    private String unit;
    @ExcelProperty("代码")
    private String materialCode;
    @ExcelProperty("备注")
    private String remark;





}
